<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:c="http://java.sun.com/jsp/jstl/core"
	xmlns:p="http://primefaces.org/ui">

<h:body>
	<ui:composition template="/pages/template.xhtml">
		<ui:define name="conteudo">
			<h:form id="form_supermercados">
			
				<p:inputTextarea disabled="true"
					value="Para realizar a comparação voce deve selecionar 2 supermercados no minimo e clicar em Comparar Lista"
					rows="3" cols="100">
				</p:inputTextarea>

				<p:panel header="Comparar Lista entre supermercados">
					<p:messages id="messages_Comparacao" />
					<p:panelGrid styleClass="semBorda">
						<p:row>
							<p:column>
								<p:outputLabel for="anunciante1" value="Primeiro Anunciante:"></p:outputLabel>
							</p:column>
	
							<p:column>
								<p:selectOneMenu value="#{compararListaBean.anunciante1.idAnunciante}" validatorMessage="Selecione o primeiro anunciante"
									id="anunciante1" required="true" requiredMessage="Selecione o primeiro anunciante">
									<p:ajax update="anunciante1 anunciante2 anunciante3" listener="#{compararListaBean.atualizarLista}" > </p:ajax>
									<f:selectItem itemLabel="Selecione o anunciante 1" itemValue="0"  ></f:selectItem>
									<f:selectItems value="#{compararListaBean.listAnunciantes1}" var="a" itemLabel="#{a.nome}" itemValue="#{a}">
									</f:selectItems>
								</p:selectOneMenu>
							</p:column>
						</p:row>
						<p:row>
							<p:column>
								<p:outputLabel for="anunciante2" value="Segundo Anunciante:"></p:outputLabel>
							</p:column>
	
							<p:column>
								<p:selectOneMenu value="#{compararListaBean.anunciante2.idAnunciante}" id="anunciante2" required="true" 
									requiredMessage="Selecione o segundo anunciante">
									<p:ajax update="anunciante1 anunciante2 anunciante3" listener="#{compararListaBean.atualizarLista}" > </p:ajax>
									<f:selectItem itemLabel="Selecione o anunciante 2" itemValue="0" ></f:selectItem>
									<f:selectItems value="#{compararListaBean.listAnunciantes2}" var="a" itemLabel="#{a.nome}" itemValue="#{a}"/>
								</p:selectOneMenu>
							</p:column>
						</p:row>
						<p:row>
							<p:column>
								<p:outputLabel for="anunciante3" value="Terceiro Anunciante:  "></p:outputLabel>
							</p:column>
	
							<p:column>
								<p:selectOneMenu value="#{compararListaBean.anunciante3.idAnunciante}"
									id="anunciante3">
									<p:ajax update="anunciante1 anunciante2 anunciante3" listener="#{compararListaBean.atualizarLista}" > </p:ajax>
									<f:selectItem itemLabel="Selecione o anunciante 3" itemValue="0"></f:selectItem>
									<f:selectItems value="#{compararListaBean.listAnunciantes3}" var="a" itemLabel="#{a.nome}" itemValue="#{a}"/>
								</p:selectOneMenu>
							</p:column>
						</p:row>
						<p:row>
							<p:column colspan="2">
								<p:commandButton action="#{compararListaBean.compararListaEntreSupermercados}"  ajax="false"
									update="@form messages_Comparacao :comparar_form" value="Comparar lista">
								</p:commandButton>
							</p:column>
						</p:row>
					</p:panelGrid>
				</p:panel>
			</h:form>

			<br></br>
			<br></br>
			<h:form id="comparar_form">
				
				<c:if test="#{compararListaBean.apresentarComparacao}">
					<p:messages id="id_messages" />

					<p:dataTable id="tabelaComparacao" var="lista" value="#{compararListaBean.compararCarrinho}" >
						<f:facet name="header">
							<h:outputText value="Tabela de comparacao de produtos entre supermercados" />
						</f:facet>
						
					    <p:columnGroup type="header">  
					 		<p:row>
					 			<p:column colspan="3"></p:column>
					 			<p:column colspan="2" headerText="#{compararListaBean.anunciante1.razaoSocial}">
					 			</p:column>
					 			<p:column colspan="2" headerText="#{compararListaBean.anunciante2.razaoSocial}">
					 			</p:column>
				 				<c:if test="#{compararListaBean.anunciante3.idAnunciante != 0}">
						 			<p:column colspan="2" headerText="#{compararListaBean.anunciante3.razaoSocial}">
						 			</p:column>
					 			</c:if>
					 		</p:row>
					 		<p:row>
					 			<p:column  headerText="Imagem"/>
					 			<p:column  headerText="Nome do Produto "/>
					 			<p:column headerText="Quantidade"/>
			 			<!-- Valores para o primeiro anunciante -->
					 			<p:column headerText="Preço "/>
					 			<p:column headerText="Total  "/>
			 			<!-- Valores para o segundo anunciante -->
					 			<p:column headerText="Preço "/>
					 			<p:column headerText="Total  "/>
			 			<!-- Valores para o Terceiro anunciante -->
			 					<c:if test="#{compararListaBean.anunciante3.idAnunciante != 0}">
						 			<p:column headerText="Preço "/>
						 			<p:column headerText="Total  "/>
					 			</c:if>
					 		</p:row>
					 	
					    </p:columnGroup>
					    <p:column>
					    <!-- Mostrar a imagem que foi pega pelo Crawler e esta salva somente o link -->
								<p:graphicImage value="#{lista.imagem}" width="60px"
									alt="#{lista.nomeProduto}" rendered="#{lista.pegoEmSite == 'true'}"/>
						<!-- Mostrar a imagem que esta salva no servidor -->
								<p:graphicImage value="../image/#{lista.imagem}" width="60px"
									alt="#{lista.nomeProduto}" rendered="#{lista.pegoEmSite == ' '}" />
						</p:column>
						<p:column>
							<h:outputText value="#{lista.nomeProduto}"></h:outputText>
						</p:column>

						<p:column>
							<p:inputText value="#{lista.qtde}" id="qtde" required="true"
								requiredMessage="Informe uma quantidade" maxlength="3"
								validatorMessage="Quantidade invalida!" converterMessage="Numero invalido">
								
								<p:ajax render="@form :form_carrinho " process="@form" update="@form :form_carrinho "
									listener="#{compararListaBean.atualizarCarrinho}" />
								<f:validateLength minimum="1" maximum="3"/>
								<f:convertNumber integerOnly="true" minIntegerDigits="1"/>
								<f:validateDoubleRange minimum="1" maximum="999"/>
							</p:inputText>
						</p:column>
					
<!-- Valores para o primeiro anunciante -->
						
						<p:column>
								<h:outputText value="R$:"  rendered="#{lista.anunciante1TemValor}"></h:outputText>
							    <h:outputText value="#{lista.valorAnunciante1}" rendered="#{lista.anunciante1TemValor}">
									<f:converter converterId="valorConverter"/>
									<f:convertNumber minFractionDigits="2" locale="PT_BR"/>
								</h:outputText>
								
								<p:graphicImage value="../resources/images/nao_tem.png" alt="Anunciante nao possui o produto"  
									title="Anunciante nao possui o produto" height="40px" rendered="#{!lista.anunciante1TemValor}" /> 
								
						</p:column>
 							
						<p:column>
						   R$: <h:outputText value="#{lista.qtde * lista.valorAnunciante1}">
								<f:converter converterId="valorConverter"/>
								<f:convertNumber minFractionDigits="2" locale="PT_BR"/>
							</h:outputText>
							<f:facet name="footer">
							Total R$: <h:outputText value="#{compararListaBean.totalAnunciante1}">
									<f:converter converterId="valorConverter"/>
									<f:convertNumber minFractionDigits="2" locale="PT_BR"/>
								</h:outputText>
							</f:facet>
						</p:column>
<!-- Valores para o Segundo anunciante -->
						<p:column>
								<h:outputText value="R$:"  rendered="#{lista.anunciante2TemValor}"></h:outputText>
							    <h:outputText value="#{lista.valorAnunciante2}"  rendered="#{lista.anunciante2TemValor}">
									<f:converter converterId="valorConverter"/>
									<f:convertNumber minFractionDigits="2" locale="PT_BR"/>
								</h:outputText>
								
								<p:graphicImage value="../resources/images/nao_tem.png" alt="Anunciante nao possui o produto"
									title="Anunciante nao possui o produto" height="40px"  rendered="#{!lista.anunciante2TemValor}"/> 
						</p:column>

						<p:column>
							R$: <h:outputText value="#{lista.qtde * lista.valorAnunciante2}">
									<f:converter converterId="valorConverter"/>
									<f:convertNumber minFractionDigits="2" locale="PT_BR"/>
								</h:outputText>
								<f:facet name="footer">
								Total R$: <h:outputText value="#{compararListaBean.totalAnunciante2}">
										<f:converter converterId="valorConverter"/>
										<f:convertNumber minFractionDigits="2" locale="PT_BR"/>
									</h:outputText>
								</f:facet>
						</p:column>
<!-- Valores para o terceiro anunciante -->
						<c:if test="#{compararListaBean.anunciante3.idAnunciante != 0}">
							<p:column>
									<h:outputText value="R$:"  rendered="#{lista.anunciante3TemValor}"></h:outputText>
									<h:outputText value="#{lista.valorAnunciante3}"  rendered="#{lista.anunciante3TemValor}">
										<f:converter converterId="valorConverter"/>
										<f:convertNumber minFractionDigits="2" locale="PT_BR"/>
									</h:outputText>
									
								<p:graphicImage value="../resources/images/nao_tem.png" alt="Anunciante nao possui o produto"
									title="Anunciante nao possui o produto" height="40px"  rendered="#{!lista.anunciante3TemValor}"/> 
							</p:column>
							
							<p:column>
								R$: <h:outputText value="#{lista.qtde * lista.valorAnunciante3}">
										<f:converter converterId="valorConverter"/>
										<f:convertNumber minFractionDigits="2" locale="PT_BR"/>
									</h:outputText>
								<f:facet name="footer">
								Total R$: <h:outputText value="#{compararListaBean.totalAnunciante3}">
										<f:converter converterId="valorConverter"/>
										<f:convertNumber minFractionDigits="2" locale="PT_BR"/>
									</h:outputText>
								</f:facet>
							</p:column>
						</c:if>
					</p:dataTable>
					
				</c:if>
			</h:form>
		</ui:define>
	</ui:composition>
</h:body>
</html>